"""
@Author : 合肥一元数智教育科技有限公司
@Date :  2025/5/19 8:57
@Description :
编写一个函数可以实现多个数据的加法运算
"""

"""
def sum_two_numbers(num1, num2):
    pass


def sum_three_numbers(num1, num2, num3):
    pass


def sum_four_numbers(num1, num2, num3, num4):
    pass

以上函数定义的方式不可行 

"""


# 定义一个包含不定参数的函数  *args    数据类型是元组 后续传入的参数都会在元组中
# 不定参数可以传递也可以不传
def sum_numbers(*args):
    sum_result = 0
    for num in args:
        sum_result += num
    print(f'sum_result = {sum_result}')


# 调用不定参数函数  多个参数之间使用逗号分割
# sum_numbers(1, 2, 3, 4)


# 参数列表中既有不定参数 也有位置参数
def numbers_operator(operator, *args):
    sum_result = 0
    match operator:
        case '+':
            for num in args:
                sum_result += num
        case '-':
            for num in args:
                sum_result -= num
        case '*':
            for num in args:
                sum_result *= num
        case '/':
            for num in args:
                sum_result /= num
        case _:
            print('请输入正确的运算符号!')
    print(f'sum_result = {sum_result}')


# 按照位置参数传递  需要将不定参数设置在最后
# numbers_operator('+', 1, 2, 3, 4)


# 存储一个学生的信息   {name:,age:,}
def stu_dic(**kwargs):
    print(kwargs, type(kwargs))


# stu_dic(name='tom',age = 20)

stu = {
    'name': 'tom',
    'age': 20,
    'sex': '男',
    'score': 90
}

#  **dict   =>  name = 'tom   age = 20  ...  解构    num1 ,num2 = (1,2)
stu_dic(**stu)
